home *** CD-ROM | disk | FTP | other *** search
- <?xml version="1.0" encoding="UTF-8" standalone="no"?>
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
- <html xmlns="http://www.w3.org/1999/xhtml">
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
- <title>4.5. Undoing</title>
- <link rel="stylesheet" href="gimp-help-plain.css" type="text/css" />
- <link rel="stylesheet" href="gimp-help-screen.css" type="text/css" />
- <meta name="generator" content="DocBook XSL Stylesheets V1.66.1" />
- <link rel="start" href="index.html" title="GIMP User Manual" />
- <link rel="up" href="ch02s04.html" title="4. Working with Images" />
- <link rel="prev" href="ch02s04s04.html" title="4.4. The Selection" />
- <link rel="next" href="ch02s04s06.html" title="4.6. Grids and Guides" />
- </head>
- <body>
- <div xmlns="" class="navheader">
- <table width="100%" summary="Navigation header">
- <tr>
- <th colspan="3" align="center" id="chaptername">4. Working with Images</th>
- </tr>
- <tr>
- <td width="20%" align="left"><a accesskey="p" href="ch02s04s04.html">Prev</a> </td>
- <th width="60%" align="center" id="sectionname">4.5. Undoing</th>
- <td width="20%" align="right"> <a accesskey="n" href="ch02s04s06.html">Next</a></td>
- </tr>
- </table>
- <hr />
- </div>
- <div class="sect2" lang="en" xml:lang="en">
- <div class="titlepage">
- <div>
- <div>
- <h3 class="title"><a id="gimp-undo"></a>4.5. Undoing</h3>
- </div>
- </div>
- </div>
- <a id="id3421968" class="indexterm"></a>
- <p>
- Almost anything you do to an image in GIMP can be undone. You can
- undo the most recent action by choosing
- <span class="guimenu">Edit</span>-><span class="guimenuitem">Undo</span>
- from the image menu, but this is done so frequently that you
- really should memorize the keyboard shortcut,
- <span><b class="keycap">Ctrl</b></span>-<span><b class="keycap">Z</b></span>.
- </p>
- <p>
- Undoing can itself be undone. After having undone an action, you
- can <span class="emphasis"><em>redo</em></span> it by choosing
- <span class="guimenu">Edit</span>-><span class="guimenuitem">Redo</span>
- from the image menu, or use the keyboard shortcut,
- <span><b class="keycap">Ctrl</b></span>-<span><b class="keycap">Y</b></span>.
- It is often helpful to judge the effect of an action by repeatedly
- undoing and redoing it. This is usually very quick, and does not
- consume any extra resources or alter the undo history, so there is
- never any harm in it.
- </p>
- <div class="caution" style="margin-left: 0.5in; margin-right: 0.5in;">
- <table border="0" summary="Caution">
- <tr>
- <td rowspan="2" align="center" valign="top" width="25">
- <img alt="[Caution]" src="../images/caution.png" />
- </td>
- <th align="left">Caution</th>
- </tr>
- <tr>
- <td colspan="2" align="left" valign="top">
- <p>
- If you undo one or more actions and then operate on the image in
- any way except by using Undo or Redo, it will no longer be possible
- to redo those actions: they are lost forever. The solution to
- this, if it creates a problem for you, is to duplicate the image
- and then operate on the copy. (<span class="emphasis"><em>Not</em></span> the
- original, because the undo/redo history is not copied when you
- duplicate an image.)
- </p>
- </td>
- </tr>
- </table>
- </div>
- <p>
- If you often find yourself undoing and redoing many steps at a
- time, it may be more convenient to work with the <a href="ch04s08.html" title="8. Undo History dialog">Undo History dialog</a>, a
- dockable dialog that shows you a small sketch of each point in the
- Undo History, allowing you to go back or forward to that point by
- clicking.
- </p>
- <p>
- Undo is performed on an image-specific basis: the "Undo History"
- is one of the components of an image. GIMP allocates a certain
- amount of memory to each image for this purpose. You can
- customize your Preferences to increase or decrease the amount,
- using the <a href="ch04s18s14.html" title="18.14. Environment">Environment</a> page of the
- Preferences dialog. There are two important variables: the
- <span class="emphasis"><em>minimal number of undo levels</em></span>, which GIMP
- will maintain regardless of how much memory they consume, and the
- <span class="emphasis"><em>maximum undo memory</em></span>, beyond which GIMP will
- begin to delete the oldest items from the Undo History.
- </p>
- <div class="note" style="margin-left: 0.5in; margin-right: 0.5in;">
- <table border="0" summary="Note">
- <tr>
- <td rowspan="2" align="center" valign="top" width="25">
- <img alt="[Note]" src="../images/note.png" />
- </td>
- <th align="left">Note</th>
- </tr>
- <tr>
- <td colspan="2" align="left" valign="top">
- <p>
- Even though the Undo History is a component of an image, it is not
- saved when you save the image using GIMP's native XCF format,
- which preserves every other image property. When the image is
- reopened, it will have an empty Undo History.
- </p>
- </td>
- </tr>
- </table>
- </div>
- <p>
- The implementation of Undo by GIMP is rather sophisticated. Many
- operations require very little Undo memory (e.g., changing
- visibility of a layer), so you can perform long sequences of them
- before they drop out of the Undo History. Some operations
- (changing layer visibility is again an example) are
- <span class="emphasis"><em>compressed</em></span>, so that doing them several times
- in a row produces only a single point in the Undo History.
- However, there are other operations that may consume a lot of undo
- memory. Most filters are examples of this: because they are
- implemented by plug-ins, the GIMP core has no really efficient way
- of knowing what they have changed, so it has no way to implement
- Undo except by memorizing the entire contents of the affected
- layer before and after the operation. You might only be able to
- perform a few such operations before they drop out of the Undo
- History.
- </p>
- <div class="simplesect" lang="en" xml:lang="en">
- <div class="titlepage">
- <div>
- <div>
- <h4 class="title"><a id="id3422167"></a>Things that cannot be Undone</h4>
- </div>
- </div>
- </div>
- <p>
- Most actions that alter an image can be undone. Actions that do
- not alter the image generally cannot be. This includes
- operations such as saving the image to a file, duplicating the
- image, copying part of the image to the clipboard, etc. It also
- includes most actions that affect the image display without
- altering the underlying image data. The most important example
- is zooming. There are, however, exceptions: toggling QuickMask
- on or off can be undone, even though it does not alter the image
- data.
- </p>
- <p>
- There are a few important actions that do alter an image but
- cannot be undone:
- </p>
- <div class="variablelist">
- <dl>
- <dt>
- <span class="term">Closing the image</span>
- </dt>
- <dd>
- <p>
- The Undo History is a component of the image, so when the
- image is closed and all of its resources are freed, the Undo
- History goes along. Because of this, unless the image has not
- been modified since the last time it was saved, GIMP always
- asks you to confirm that you really want to close it. (You
- can disable this in the <a href="ch04s18s14.html" title="18.14. Environment">Environment</a> page of
- the Preferences dialog; if you do, you are assuming
- responsibility for thinking about what you are doing.)
- </p>
- </dd>
- <dt>
- <span class="term">Reverting the image</span>
- </dt>
- <dd>
- <p>
- "Reverting" means reloading the image from file. GIMP
- actually implements this by closing the image and creating a
- new image, so the Undo History is lost as a consequence.
- Because of this, if the image is unclean, GIMP always asks you
- to confirm that you really want to revert the image.
- </p>
- </dd>
- <dt>
- <span class="term">"Pieces" of actions</span>
- </dt>
- <dd>
- <p>
- Some tools require you to perform a complex series of
- manipulations before they take effect, but only allow you to
- undo the whole thing rather than the individual elements.
- For example, the Intelligent Scissors require you to create
- a closed path by clicking at multiple points in the image,
- and then clicking inside the path to create a selection.
- You cannot undo the individual clicks: undoing after you
- are finished takes you all the way back to the starting
- point. For another example, when you are working with the
- Text tool, you cannot undo individual letters, font changes,
- etc.: undoing after you are finished removes the newly
- created text layer.
- </p>
- </dd>
- </dl>
- </div>
- <p>
- Filters, and other actions performed by plugins or scripts, can
- be undone just like actions implemented by the GIMP core, but
- this requires them to make correct use of GIMP's Undo
- functions. If the code is not correct, a plugin can potentially
- corrupt the Undo History, so that not only the plugin but also
- previous actions can no longer properly be undone. The plugins
- and scripts distributed with GIMP are all believed to be set up
- correctly, but obviously no guarantees can be given for plugins
- you obtain from other sources. Also, even if the code is
- correct, canceling a plugin while it is running can sometimes
- leave the Undo History corrupted, so it is best to avoid this
- unless you have accidentally done something whose consequences
- are going to be very harmful.
- </p>
- </div>
- </div>
- <div class="navfooter">
- <hr />
- <table width="100%" summary="Navigation footer">
- <tr>
- <td width="40%" align="left"><a accesskey="p" href="ch02s04s04.html">Prev</a> </td>
- <td width="20%" align="center">
- <a accesskey="u" href="ch02s04.html">Up</a>
- </td>
- <td width="40%" align="right"> <a accesskey="n" href="ch02s04s06.html">Next</a></td>
- </tr>
- <tr>
- <td width="40%" align="left" valign="top">4.4. The Selection </td>
- <td width="20%" align="center">
- <a accesskey="h" href="index.html">Home</a>
- </td>
- <td width="40%" align="right" valign="top"> 4.6. Grids and Guides</td>
- </tr>
- </table>
- </div>
- </body>
- </html>
-